home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / umich / utils / wnx1091.lzh / XESMACRO.S < prev   
Text File  |  1991-10-15  |  3KB  |  197 lines

  1. xes_call    macro
  2.  
  3.         move.w    #-1,-(a7)
  4.         trap    #5
  5.         
  6.         endm
  7.  
  8.  
  9. xes_submit    macro
  10.  
  11.         move.l    #parmblk,-(a7)
  12.         move.w    #-1,-(a7)
  13.         xes_call
  14.         
  15.         endm
  16.  
  17.  
  18. xes_init    macro
  19. * \1 = address of parameter block.
  20.  
  21.         move.l    \1,-(a7)
  22.         move.w    #0,-(a7)
  23.         trap    #5
  24.         
  25.         endm
  26.  
  27. xes_rsrcinit    macro
  28. * \1 = fixup flag (0 to fix, nonzero to not fix)
  29. * \2 = scaling method.
  30. * \3 = address of binary resource tree to fix up.
  31.         move.w    \1,WNX_in
  32.         move.w    \2,WNX_in+2
  33.         move.l    \3,WNX_in+4
  34.  
  35.         move.l    #parmblk,-(a7)
  36.         move.w    #1,-(a7)
  37.         xes_call
  38.  
  39. * old method:
  40.         *move.l    #parmblk,-(a7)
  41.         *move.l    \1,-(a7)
  42.         *move.w    #1,-(a7)
  43.         *trap    #5
  44.         
  45.         endm
  46.         
  47.  
  48. xes_sibling    macro
  49. * \1.L = address of 16 byte string (not necessarily null terminated) to
  50. *        check for in the WNX i.d. field of the parmblks of other WNXes...
  51.  
  52.         move.l    \1,WNX_in
  53.  
  54.         move.l    #parmblk,-(a7)
  55.         move.w    #2,-(a7)
  56.         xes_call
  57.  
  58.         endm
  59.  
  60.  
  61. xes_mesagwrite    macro
  62. * \1.L = pointer to recipient list...
  63. * \2.W = length (in bytes) of message (including XES header which is 16 bytes)
  64. * \3.L = pointer to message
  65.  
  66.         move.l    \1,WNX_in
  67.         move.w    \2,WNX_in+4
  68.         move.l    \3,WNX_in+6
  69.  
  70.         move.l    #parmblk,-(a7)
  71.         move.w    #4,-(a7)
  72.         xes_call
  73.  
  74.         endm
  75.  
  76.  
  77. xes_malloc    macro
  78. * \1.L = amount of memory to allocate.
  79.  
  80.         move.l    \1,WNX_in
  81.         
  82.         move.l    #parmblk,-(a7)
  83.         move.w    #38,-(a7)
  84.         xes_call
  85.  
  86.         endm        
  87.  
  88.  
  89. xes_flush    macro
  90.  
  91.         move.l    #parmblk,-(a7)
  92.         move.w    #39,-(a7)
  93.         xes_call
  94.         
  95.         endm
  96.         
  97.  
  98. xes_genv    macro
  99.  
  100.         move.l    #parmblk,-(a7)
  101.         move.w    #40,-(a7)
  102.         xes_call
  103.         
  104.         endm
  105.         
  106.         
  107. xes_pwindow    macro
  108.  
  109.         move.l    #parmblk,-(a7)
  110.         move.w    #41,-(a7)
  111.         xes_call
  112.         
  113.         endm
  114.  
  115.  
  116. xes_draw    macro
  117. * \1.W = index of starting object to draw.
  118. * \2.W = index of ending object to draw.
  119.  
  120.         move.w    \1,WNX_in
  121.         move.w    \2,WNX_in+2
  122.         
  123.         move.l    #parmblk,-(a7)
  124.         move.w    #42,-(a7)
  125.         xes_call
  126.         
  127.         endm
  128.         
  129.         
  130. xes_redraw    macro
  131. * \1.W = handle of the window to redraw.
  132. * \2.W = -1 if to align tree to window's work area x,y coords.
  133. * \3.L = pointer to the resource tree to use for redraw.
  134. * \4.W = 0 to suppress the actual redrawing (i.e. just align the
  135. *     .RSC to the window's work area...  used during WM_MOVED
  136. *     messages, which may or may not need a true redraw...
  137.  
  138.         move.w    \1,WNX_in
  139.         move.w    \2,WNX_in+2
  140.         move.l    \3,WNX_in+4
  141.         move.w    \4,WNX_in+8
  142.         
  143.         move.l    #parmblk,-(a7)
  144.         move.w    #43,-(a7)
  145.         xes_call
  146.         
  147.         endm
  148.         
  149.         
  150. xes_chrsrc    macro
  151. * \1.W = requested tree's index.
  152.  
  153.         move.w    \1,WNX_in
  154.         
  155.         move.l    #parmblk,-(a7)
  156.         move.w    #50,-(a7)
  157.         xes_call
  158.         
  159.         endm
  160.  
  161.  
  162. xes_stredit    macro
  163. * \1.W = handle of the window the resource is in.
  164. * \2.L = address of the resource the editable text object is in.
  165. * \3.W = index of the object to edit (must be F_text or F_boxtext)
  166. * \4.W = input character.
  167. * \5.W = -1 or current cursor position.
  168. *    (NOTE: -1 places cursor at end of the string)
  169.  
  170.         move.w    \1,WNX_in
  171.         move.l    \2,WNX_in+2
  172.         move.w    \3,WNX_in+6
  173.         move.w    \4,WNX_in+8
  174.         move.w    \5,WNX_in+10
  175.         
  176.         move.l    #parmblk,-(a7)
  177.         move.w    #64,-(a7)
  178.         xes_call
  179.  
  180.         endm
  181.         
  182.  
  183. xes_xformdo    macro
  184. * \1.W = handle of the window the resource is in.
  185. * \2.L = address of the resource tree to check.
  186. * \3.W = index of the object clicked on, -1 if unknown.
  187.  
  188.         move.w    \1,WNX_in
  189.         move.l    \2,WNX_in+2
  190.         move.w    \3,WNX_in+6
  191.         
  192.         move.l    #parmblk,-(a7)
  193.         move.w    #65,-(a7)
  194.         xes_call
  195.         
  196.         endm
  197.